package com.dykj.fireFighting.api.elasticsearch.device.entity;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

import java.io.Serializable;
import java.util.Date;

/**
 * @Author: zly
 * @Description : 大数据页面设备统计 -设备
 * @Date: 2021-07-09
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Document(indexName = "device", type = "product", shards = 1, replicas = 0)
public class EsDevice implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    private String id;
    /**
     * 创建人
     */
    private String createBy;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 删除标识 0已删除 1未删除
     */
    private Integer isDel;
    /**
     * 修改人
     */
    private String updateBy;
    /**
     * 修改时间
     */
    private Date updateTime;
    /**
     * 单位id
     */
    @Field(type = FieldType.Keyword)
    private String unitId;
    /**
     * 主机唯一码
     */
    @Field(type = FieldType.Keyword)
    private String maufactorIdentification;
    /**
     * 设备名
     */
    @Field(analyzer = "ik_max_word", type = FieldType.Text)
    private String name;
    /**
     * 设备类型
     */
    private String type;
    /**
     * 设备与历史记录关联字段
     */
    @Field(analyzer = "ik_max_word", type = FieldType.Text)
    private String relationId;
    /**
     * 设备所属系统
     */
    private String devSysType;
    /**
     * 主机号
     */
    private String hostNumber;
    /**
     * 回路号
     */
    private String loopNumber;
    /**
     * 部位号
     */
    private String partNumber;
    /**
     * 二次码
     */
    private String secondaryCode;
    /**
     * 通道号（水设备用）
     */
    private String channelNumber;
    /**
     * 阈值上限（水设备用）
     */
    private Double thresholdH;
    /**
     * 阈值下限（水设备用）
     */
    private Double thresholdL;
    /**
     * K值（水设备计算使用）
     */
    private Double k;
    /**
     * B值（水设备计算使用）
     */
    private Double b;
    /**
     * 模拟量类型 0-液位；1-压力（水设备用）
     */
    private String moniType;
    /**
     * 报警次数（水设备使用）
     */
    private Integer alarmNumber;
    /**
     * 设备状态
     */
    private String status;

}
